package com.bcu.calculus.service;

import com.bcu.calculus.entity.Message;
import com.bcu.calculus.entity.Send;
import com.bcu.calculus.entity.SendList;
import com.bcu.calculus.entity.SendList2;

import java.util.List;
import java.util.Map;

public interface SendService {

    Message<?> insert (Send send);



    Message<?> deleteByPrimaryKey(String sendId);

    Message<?> updateByPrimaryKey(Send send);



    Message<Send> selectByPrimaryKey(String sendId);


    Message<List<Send>> selectAllSend();


    Message<List<Send>> getSendByManyList(String flistId,String slistId,String tlsitId,String sendSemseterId);

    Message<List<Send>> getSendByTwoList(String flist, String slist);

    Message<Map<String,Float>> getScoreByUserId(String userId);

    Message<List<Send>> getAllAvScore();

    Message<List<Send>> getAllPR();

    Message<List<Send>> selectAllAvScore();

    Message<List<Send>> selectAllPR();

    Message<List<Send>> getsendsBySemesterId(Integer semesterId);

    Message<?> getRouterAndPublicInfo(String flistId,String slistId,String tlsitId,String sendSemseterId);

    Message<?> getRouterAndPublicInfoName(String flistId,String slistId,String tlsitId,String sendSemseterId,String likeName);


    Message<?> pushSend(SendList2 sendList2);


    //设置每某个send的分数为NUll以及状态Status
    Message<?> setSendStatusAndSendScoreIsNull(String sendId, Integer sendStatus, String giveUserId);

    Message<List<Send>> selectBySendUserIdAndSemId(String sendUserId, Integer semId);
}
